home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
opus
/
sfued112.zip
/
SFUE.DOC
< prev
next >
Wrap
Text File
|
1993-01-09
|
34KB
|
799 lines
StormFront User Editor for the Opus CBCS
Copyright 1993 by Kevin Silcox
January 9, 1993
TABLE OF CONTENTS
1 INTRODUCTION ................................................. 1
2 DISCLAIMER ................................................... 1
3 ENVIRONMENT .................................................. 1
3.1 MEMORY USEAGE ........................................... 1
3.2 SFUE INFORMATION ........................................ 1
3.3 PREPARING AND RUNNING SFUE .............................. 2
4 COMMANDLINE PARAMETERS ....................................... 2
4.1 VIDEO MODE .............................................. 2
4.2 USER DATABASE FILE ...................................... 2
4.3 TRANSLATE GRAPHICS ...................................... 3
4.4 PURGING USERS ........................................... 3
4.5 PRIVILEGE LEVEL SELECTOR ................................ 3
4.6 SORTING ................................................. 3
4.7 DEFAULT PARAMETERS ...................................... 4
4.8 USERS EXPIRATION DATE ................................... 4
5 DISPLAY INDICATORS ........................................... 5
6 SCREEN COMMANDS .............................................. 6
6.1 ? - HELP ............................................ 6
6.2 R - RECORD NUMBER ................................... 6
6.3 @ - TAG/UNTAG ....................................... 6
6.4 * - UTILITIES ....................................... 6
6.4.1 A - ADDUSER ...................................... 6
6.4.2 E - RESTORE ...................................... 6
6.4.3 F - FIND ......................................... 6
6.4.4 G - GLOBAL CHANGES ............................... 6
6.4.5 O - SORT ......................................... 7
6.4.6 R - REPORT ....................................... 7
6.4.7 U - USER STATUS .................................. 7
6.4.8 W - SWAP RECORDS.................................. 7
6.4.9 Z - ZAP PURGED RECORDS............................ 8
6.5 +/- - CHANGE RECORD NUMBER ............................ 8
6.6 ESC - QUIT ............................................ 8
6.7 SPACE - SCREEN SELECT ................................... 8
6.8 0 - CONTINUE SEARCH ................................. 8
6.9 F9 - DOS SHELL ....................................... 8
6.10 INS - ADD NEW USER .................................... 8
6.11 DEL - CHANGE USER STATUS .............................. 9
6.12 ^H - TOGGLE HIDDEN PASSWORDS ......................... 9
6.13 ^I - UPDATE INDEX .................................... 9
6.14 ^N - NEXT TAGGED RECORD .............................. 9
6.15 ^P - PREVIOUS TAGGED RECORD .......................... 9
6.16 ^R - RELOAD RECORD ................................... 9
6.17 ^S - SAVE OPTIONS .................................... 9
6.18 ^U - UNTAG ALL ....................................... 9
6.19 ^V - VIEWER .......................................... 9
6.20 ^X - TOGGLE IBM GRAPHICS ............................. 9
StormFront User Editor for the Opus CBCS
7 STRING EDITING ............................................... 10
8 REPORT FORMAT INFORMATION .................................... 11
8.1 80 CHARACTER FORMAT .................................... 11
8.2 132 CHARACTER FORMAT .................................... 11
9 ERRORLEVELS .................................................. 12
10 CHART OF COMMANDLINE PARAMETERS .............................. 12
CREDITS
This product uses the SPAWNO routines by Ralf Brown to minimize
memory usage while shelling to DOS and running other programs.
Sort routine written by R. Gardner and supplied within Bob
Stout's SNIPPETS file.
PKLITE Copyright PKWARE, Inc.
Special Thanks to my Beta Test Team, the Opus Utility Team, and
the many SysOps who use my program and have made feature requests
and have notified me of bugs so that I am able to make SFUE a
reliable piece of software.
Thanks also to Mark Shultise for formatting the documentation.
SOME FINAL THOUGHTS
Thank You for taking your time to read this, and use my program.
If you have any comments or suggestions, I'd like to hear from
you. Please contact me if you have any problems with the
program, or you would like to see any added features. You may
contact me (via NetMail) at the phone number (or FidoNet Address)
listed below. I also read the NEWOPUS and MEADOW Echo's. The
latest version of my software is also available on my BBS. It
may be requested with the magic name of "SFUE" for the latest
version.
--=={ Kevin Silcox }==--
SysOp of StormFront
in Orangevale, California
(916) 988-0407
FidoNet (1:203/407.0)
CalNet (49:916/407.0)
BBS Hours:
24 hours a day,
excluding National Mail Hour:
1:00 a.m to 2:00 a.m PST
Page 1 StormFront User Editor for the Opus CBCS
1 INTRODUCTION
This program is designed to maintain the Opus BBS user database.
It is capable of adding users, marking them to be ReUsed, Purged,
and even Removing users marked to be Purged (Zap), along with
many other nifty features.
2 DISCLAIMER
This software is provided "AS IS". Although it has been tested
by many people in various environments, I cannot guarantee it to
work in your environment. *** YOU ARE ENCOURAGED TO MAKE PROPER
BACKUP COPIES OF YOUR DATABASE FILES IN THE UNLIKELY EVENT THAT
SOMETHING UNEXPECTED SHOULD HAPPEN. *** I will not be held
responsible for any damages incurred from the use or misuse of
this software.
This software and the associated documentation is not unlike a
living thing; that is to say, in time it changes and evolves.
You should watch for newer versions and report any
inconsistancies to me at the address below.
In keeping with the spirit of Opus BBS software, there is no fee
associated with this software.
3 ENVIRONMENT
3.1 MEMORY
This version: 1.12 ---> For Opus v1.7x/v1.8x
Requires approximately 150K of Available RAM. Requires more if
using the Sort option (based upon number of records in your
database --> about 28 bytes for each record, up to a maximum of
about 2300 records, plus 8 bytes per CWF). If you exceed 2300
records then please let me know. The Verify needs 24 bytes per
record, and the Tag array needs 1 byte per record. The maximum
memory requirement should be about 210K.
I recommend that you use an EXE compressor such as PKlite in
order to reduce the program size (by about 53% with PKLite
v1.15).
3.2 USING SFUE
If you are familiar with Opus and how it works, then the items
which SFUE can update should be fairly easy to understand.
SFUE's user interface is also undergoing changes and future
versions will be more user-friendly. However in the intrim, you
should still find SFUE quite flexibile and useful. Enjoy!
Page 2 StormFront User Editor for the Opus CBCS
-*- MULTITASKER WARNING -*-
*--------------------------------------------------*
| If you are running Opus in a multi-tasking envi- |
| onment then ensure that you *DO NOT* Sort or Zap |
| the database while there is a potential that Opus|
| needs to access the user database file! (i.e. If |
| a user calls and attempts to login.) |
*--------------------------------------------------*
3.3 PREPARING AND RUNNING SFUE
To prepare SFUE for use, unbundle the software into an
appropriate directory. You may wish to have SFUE in your OPUS
home directory, but that is unnecessary. SFUE will determine
where certain OPUS files are and will act appropriately.
SFUE may be run interactively or via command-line arguments for
local or non-local use. Entering an argument other than those
listed below will display a brief help screen. You may either
use '-' or '/' character for each argument.
4 COMMAND LINE PARAMETERS
/VM force Mono mode /VC force Color mode /VA AutoDetect Video
/VD force DOS Writes /VB force BIOS Writes /VX Translate IBM Graphics
/Z[E][days] Zap database /P{priv}[+/-] /Ud:\\path\\[filename]
/I Install/Reconfigure /E[days] Expiration Reset
/O[{1st}[{order}][,{2nd}[{order}]][,start[,end]]] Sort database
4.1 VIDEO MODE /VM and /VC
Normally, SFUE will detect the proper video mode and act
accordingly. The /VM and /VC options are provided to force the
memory address for the direct-screen writes if the program
doesn't recognize the correct video mode. If no arguments are
entered, the program will AutoDetect which video mode to use for
the direct-screen writes (or whatever mode has been selected as
the default). If you use the DOS option you may redirect I/O.
4.2 USER DATABASE FILE /U
Most users will prefer to have SFUE access Opus's User Database,
USER.DAT; however, SFUE can access a different file should you
prefer.
/U allows you to specify the name of the User Database file you
wish to use instead of the default USER.DAT. If you specify just
the full path without a filename, USER.DAT will be assumed
(however, you must end the path with a "\").
Page 3 StormFront User Editor for the Opus CBCS
4.3 TRANSLATE /VX
You may either use the /VX (Translate) option from the
command-line, or use CTRL-X to toggle IBM Graphics translation ON
and OFF from within the user edit screen.
NOTE: When translation is turned ON, the IBM Graphics characters
in the Report will be translated also.
4.4 PURGING USERS /Z
There are several ways of executing a database Zap. If you just
specify /Z, then only records that have a Status of 'Purge' will
be removed. If you specify a number (/Z90) then any user who has
not called within that many days will be removed. If you specify
/ZE then SFUE will check the expiration fields in each record
to decide whether a user should be removed or demoted (based upon
the Date or Time fields and Action field). You may localize the
processing based upon privilege level if you use the /P option.
See the Zap option below for more information.
Example:
SFUE /ZE /PN-
The above selection would check the expiration fields, check the
user status field, and *only* remove the user if their privilege
level is Normal or below.
4.5 PRIVILEGE LEVEL SELECTOR /P
/P is a Privilege level selector that may be used with either the
/E or /Z options to localize processing to specific privilege
levels (or a single level). If you use *both* of the /Z and /E
options, both will use the same Privilege level range, but the
Expiration fields will be updated before the database gets
"Zapped".
4.6 SORTING /O
The Sort option may look complex, but it works similar to the
keystrokes you enter within the program. If you just specify /O
then all of the defaults will be used.
{1st} and {2nd} are the primary and secondary sort keys,
respectively. For the Name and Alias items you may specify a
second letter for the first or last name (last name is the
default for both).
{order} is either an 'A' or 'D' (ascending or descending). The
start and end are the stsrt and end records respectively.
Page 4 StormFront User Editor for the Opus CBCS
Examples:
SFUE /OPD,NLD,3,0
-- Sort records number 3 to end by descending priv, descending
last name
SFUE /O,A,3
-- Sort records 3 to end by descending priv, descending last
alias name
SFUE /ONFA
-- Sort records 2 to end by ascending first name
SFUE /O,,3
-- Sort records 3 to end using the default sort order
Those examples should give you an idea as to sorting using the
command-line. Once you're familiar with the keys you press while
inside the program, you should have no problem using the same
keys from the command-line.
Basically, each key you press inside the program will go onto the
command-line, and wherever you just press <cr> to accept a
default, you would just leave that <cr> key out.
4.7 DEFAULT PARAMETERS /I
Use /I to change the default parameters.
NOTE: Not all parameters saved in the INI file get priority.
For example, if the OPUS environment variable is pointing to a
PRM file, that file will be used instead of the name stored in
the INI file. The INI file is primarily used as a backup method
so that locating the files SFUE needs is more reliable. SFUE
also may save other important information in the INI file.
4.8 USERS EXPIRATION DATE /E
By using the /E option you may automatically reset each users'
expiration date based upon their last call. This is to be used
in conjunction with the Expiration Controls within Opus. If you
don't specify the day count on the command-line, SFUE will
extract and use the value in the PRM file. This feature makes it
nice to make sure each user will be removed if their account is
inactive over a certain number of days. This option is only
available from the command-line.
Page 5 StormFront User Editor for the Opus CBCS
5 DISPLAY INDICATORS
Whenever there has been a modification to the current user
record, SFUE will place an asterisk '*' in the top right-hand
side of the screen. There are two items which SFUE *may*
change automatically. If the number of times that a user has
called the system is zero (0), then this item will be changed to
one (1). Also, if the user has QkMenu (Return to Last Menu)
enabled, SFUE will try to ensure the menu item is valid to
prevent Opus from having problems.
Also, if the current users' account is due to "Expire", the
users' status field will have a blinking red asterisk (*'s) on
both sides of the Status field.
If a record has been Tagged, then a 'T' will be displayed upon
the top line just before the User Status. Records will only
remain tagged for the current session.
As of Version 1.08, there are now two indicators in ScrnSect 1.
One item which you might see is the '[COPY]' indicator. This
indicates that you are NOT currently editing the database that
Opus uses. If you are editing the actual database that Opus
uses, you won't see the '[COPY]'.
The other indicator is '*CWF*' which indicates that the user
being displayed has a CWF file in the Opus root directory
(#.?BS). This is displayed whether you're editing a copy of the
database or the real database.
When using the Inactivity timer, the program will beep at 5
second intervals starting 20 seconds before exiting.
NOTE: SFUE will always try to show the users' Real Name in the
Name field and their Alias in the Alias field, based upon
the information in the PRM file.
The help screen within the program takes priority over this file.
In the lower right-hand corner of the User Screen are the most
often used commands which are available in all ScreenSections.
Below is a brief description of what they do:
Page 6 StormFront User Editor for the Opus CBCS
6 SCREEN COMMANDS
6.1 ?) Help: Displays a help screen.
6.2 R) Record Number: This allows you to go to a specific record number
within the database.
6.3 @) Tag/Untag: This will toggle whether a user record has been
marked as 'Tagged'.
6.4 *) Utilities: This is for maintaining the database.
Options are:
6.4.1 Adduser: This is what you'll use if you need to add a user.
It has gives you the option of just adding a record
at the end of the database, or searching for a record
marked with the "Reuse" status. If you choose to
search for a record to Reuse, and there is a record
marked with the Reuse status, then that record will be
cleared of its information and you may start entering
the new user information in that record.
6.4.2 rEstore: When you wish to add the users in USER.SAV back into
the database. If successful, USER.SAV will be deleted.
This allows you to Undelete the old savefile, if nec-
essary.
6.4.3 Find: This allows you to search certain fields for a string.
It's useful for finding a specific user quickly, among
other things. (Previously called Search)
6.4.4 Global: Allows you to make certain changes to specific (or all)
users. You may specify to set only a certain privilege
level, or the default is all records (record #1 will
NOT be touched). There are also sub-levels that will
not be described in this document.
The options for changing Keys and Sections may cause some
confusion. With those two options there are 4 sub-options
[Exact/Set/Toggle/Unselect]:
Exact: Set each user to exactly the keys you
specify. If you only select the 'A' key,
that's the only key the users' will have
no matter what they started out with.
Set: All keys you specify will be turned ON for
each user.
Toggle: Exactly what it says... If you select the 'A'
key each users' keys will be set to the
opposite it started out as.
Unselect: The opposite of Set. It will make sure each
key you select is turned OFF.
Page 7 StormFront User Editor for the Opus CBCS
6.4.5 sOrt: This will sort your database based upon the keys you
select, and whether you select Ascending or Descending
order for each key. You may select up to two keys to
sort by. If the database you're sorting is the same
one pointed to by the PRM file, then the CWF's will
be updated accordingly. If there is a problem renaming
a CWF, it will be most probably be renamed with a .BAK
extension.
6.4.6 Report: This generates a report for all users and sends it either
to the Screen, Printer, or a File. You may Pause the
output by pressing 'P', or Abort by pressing 'ESC'. You
are then asked several questions regarding the format of
the report. Be advised that SFUE will NOT send control
codes to the printer, it will only format the report
appropriately. You should set the proper font size and
LPI setting on the printer prior to report output. When
sending to the printer or a file, a progress indicator
(percent complete) will be displayed.
6.4.7 User Status: This allows you to modify the status of a user's
record. The Status may be one of the following:
Normal: This is a normal record.
Reuse: As new users are added, they will be
placed in records marked with this
status instead of being added to the
end of the database.
Purge: This means that if you use the Zap
function, the record will be removed
from the database. Also used by OMAN.
Update ID: This will update the caller ID number
but should only be used if the
caller_ID is all zero's or in conflict
with another record.
Verify: You should use this to occassionally check
for problem records. This will scan all
the records and make sure the names and ID's
are valid. Any records that have zero ID's,
matching ID's, or matching Names will be
automatically tagged so that you may use
CTRL-N/CTRL-P (Next/Previous tagged record,
respectively) to easily look through the marked
records. The field that is in conflict with
another field will have a visible indicator.
If the name field is marked, then you need
to look for another user with the same name and
take whatever action you feel will fix the dupe.
The same goes for the ID field.
6.4.8 sWap: This allows you to swap any two records with
each other.
Page 8 StormFront User Editor for the Opus CBCS
6.4.9 Zap: This removes any records marked with Purge status.
You may specify the number of days a user may go
without calling the system before they are removed
from the database. In addition you may check the
expiration fields and localize processing to certain
privilege levels. This option is also available from
the command-line. By default a file called USER.SAV
will be used to hold any deleted records. Also, the
names of any deleted users will be placed into a
file with the same basename as the save file, but
with a ".DEL" extension. (i.e. USER.DEL) You may
restore the records with the Import option. If the
database you're zapping is the same one pointed to
by the PRM file, then the CWF's will be updated
accordingly. The CWF's of user's that are removed
from the database will be renamed from #.BBS to #.OLD.
6.5 +/-) Change Record Number:
You may use either the plus and minus keys to increment/decrement
the record number respectively, or use the right and left arrow
keys to do the same thing. Home and End will place you at the
first and last records respectively.
6.6 ESC) Quit:
If you have made any changes to the current record without going
to another record, you will be asked if you want to save the user
information before exiting. ** Anytime you change to another
record, the current record is saved to disk if it has been
modified. **
6.7 SPACE) {SpaceBar} ScrnSect:
Changes the current Screen Section. The active ScrnSect is
displayed at the top of the screen. The Screen Sections are at
the left side of each box border. A ScrnSect must be active in
order for its commands to be active. Also when a ScrnSect is
active, the number next to the active box will BLINK. The
ScrnSect can also be changed with the up and down arrow keys to
decrement/increment the ScrnSect number respectively.
6.8 0) Continue Search:
Only valid/displayed if you have already specified a search key.
This allows you to continue searching on the previously entered
search key starting at the next record.
6.9 F9) DOS Shell:
Shells to DOS to allow you to make modifications without exiting
SFUE. The User Editor IS swapped out of memory.
6.10 INS) Add New User:
Same as using the *Utils/Adduser option.
Page 9 StormFront User Editor for the Opus CBCS
6.11 DEL) Toggle User Status:
An easy method of changing a user's status. Status is one of the
following: Normal, ReUse, Purge
6.12 CTRL-H) Toggle Hidden Passwords:
Toggles minimum Privilege that will not display passwords.
Either Normal or Sysop access. Default is Normal.
6.13 CTRL-I) Update Index:
Forces the NDX file to be updated (via index program).
6.14 CTRL-N or CTRL-RIGHT) Next Tagged Record:
For easy viewing of Tagged records.
6.15 CTRL-P or CTRL-LEFT) Previous Tagged Record:
For easy viewing of Tagged records.
6.16 CTRL-R) Re-Load Record:
Reads in the current user from disk. Use this option in the
event you make some changes to the record and decide you really
didn't want to do make that change.
6.17 CTRL-S) Save Options:
Saves the current options as the defaults to the INI file.
6.18 CTRL-U) Untag All:
Clears the tags on all records.
6.19 CTRL-V) Viewer:
Allows easy viewing of files that may be displayed to each user.
You may select any of the 5 Special Announcement (SpAnn) files,
the Special OEC (SpOEC) file for that user, or the Custom Welcome
File (CWF). If the file you wish to display doesn't exist, then
nothing is displayed. The files are displayed via the DOS TYPE
command, so no AVATAR translation or formatting is done.
6.20 CTRL-X) Toggle IBM Graphics:
Toggles IBM Graphics translation ON/OFF.
*--------------------------------------------------*
| If you have the inactivity timer set, |
| SFUE will save the current record and update |
| the index *if necessary* (and nobody is online) |
| before exiting. |
*--------------------------------------------------*
Page 10 StormFront User Editor for the Opus CBCS
7 STRING EDITING
When using either BIOS or DIRECT screen writes you now have full
editing capabilities when entering in strings. Valid keys are:
Left/Right Arrow Keys: Moves cursor one character left/right
within the string.
HOME/END: Places the cursor at the beginning/end of
the string being edited.
INSert: Toggles Insert mode ON/OFF. When ON the
cursor will change to more of a block,
and when not in insert mode the cursor
will appear normal.
DELete: Deletes the character under the cursor.
F6: Deletes everything from the cursor to the
end of the string.
When using DOS mode you may clear the string by pressing the
SPACEBAR for the first character and then pressing ENTER.
I hope this is enough of a program description to get you
familiar with the program. For Opus v1.7+ the ScrnSect is not
the same as the "Section" in Opus. Currently this Editor doesn't
contain an internal index updating function. You will need to
use the USERNDX program that is distributed with Opus v1.7+. The
Editor will call USERNDX when exiting whenever it thinks the
Index needs to be updated. USERNDX will only be called when you
have made changes inside the Editor that might change the NDX
file. USERNDX should either be located in the PATH, or in the
same directory as your user database, or in your Opus Home
Directory. Once all the drive/path information has been found
once, it's stored in an INI file so SFUE can always find the
needed files (unless they're moved). ;-)
Page 11 StormFront User Editor for the Opus CBCS
8 REPORT FORMAT INFORMATION
8.1 Report Detail Info (80-column output):
---------------------------------------------------
Detail Group 1:
A = User Record Number (Width = 5)
B = User Name (Real) (Width = 26)
C = Phone Number (Width = 15)
D = City, State (Width = 25)
--
Detail Group 2:
E = Street Address (Width = 26)
F = Answer to SysOp Question (Width = 43)
--
Detail Group 3:
G = SysOp Comment (Width = 44)
H = Birthdate (Width = 9)
I = Access Privilege (Width = 9)
J = Language Number (Width = 1)
--
Detail Group 4:
K = Keys (Width = 32)
L = Download:Upload Ratio (Width = 9)
M = Days Since Last Call (Width = 4)
N = Password (optional) (Width = 15)
8.2 Report Detail Info (132-column output):
---------------------------------------------------
Detail Group 1:
A = User Record Number (Width = 5)
B = User Name (Real) (Width = 26)
C = Phone Number (Width = 15)
D = City, State (Width = 25)
E = Street Address (Width = 25)
F = Alias (Width = 20)
--
Detail Group 2:
G = Answer to SysOp Question (Width = 44)
H = SysOp Comment (Width = 45)
I = Birthdate (Width = 9)
J = Password (optional) (Width = 15)
--
Detail Group 3:
K = Access Privilege (Width = 9)
L = Keys (Width = 32)
M = Download:Upload Ratio (Width = 9)
N = Days Since Last Call (Width = 4)
O = First Call to System (Width = 11)
P = Language (Width = 10)
Page 12 StormFront User Editor for the Opus CBCS
9 ERRORLEVELS
8: User Currently Online
7: Writing INI Structure
6: Creating INI File
5: Error Opening User Database
4: User Database NOT Found
3: Writing Record
2: Reading Record
1: Unsuccessful (General Error)
10 COMMAND LINE PARAMETERS - ALPHABETICALLY
CMD DESCRIPTION USEAGE
--- -------------------- -------------------------------------------------
/E EXPIRATION RESET /E[days]
/I INSTALL/RECONFIGURE /I
/O SORT DATABASE /O[{1st}[{order}][,{2nd}[{order}]][,start[,end]]]
/P PRIVILEGE LEVEL /P{priv}[+/-] /Ud:\\path\\[filename]
/VA AUTODETECT VIDEO /VA
/VB FORCE BIOS WRITES /VB
/VC FORCE COLOR MODE /VC
/VD FORCE DOS WRITES /VD
/VM FORCE MONO MODE /VM
/VX XLATE IBM GRAPHICS /VX
/Z ZAP DATABASE /Z[E][days]